home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / 041-050 / amok49 / oprof / microtimer / microtimer.dok next >
Text File  |  1993-11-04  |  2KB  |  58 lines

  1. :Program.       MicroTimer.mod
  2. :Author.        Volker Rudolph
  3. :Address.       Lettow-Vorbeck-Str. 11 / 6750 Kaiserslautern 26
  4. :Phone.         06301/8566
  5. :Version.       1.4
  6. :Date.          7.3.1990
  7. :Copyright.     PD
  8. :Language.      Oberon
  9. :Translator.    Amiga-Oberon V1.17.1
  10. :History.       V1.1 V. Rudolph 24.Apr.1989
  11. :History.       V1.2 [bne] 03.Sep.1989 (+ CiaPortName)
  12. :History.       V1.3 V. Rudolph 2.1.1990 (Umsetzung in Oberon, neue Funktionen)
  13. :History.       V1.4 V. Rudolph 7.3.1990 (Anpassung an Oberon-Compiler V0.9)
  14. :Contents.      Das Modul MicroTimer ermöglicht sehr präzise Zeitmessungen.
  15.  
  16. Dies ist des Umsetzung des Modula2-Moduls MicroTimer nach Oberon.
  17. MicroTimer ist ein Modul, mit dem man sehr präzise Zeitmessungen
  18. vornehmen kann. Es verwendet dafür die beiden Timer der CIA-B. Sie
  19. werden gekoppelt, und ermöglichen so eine maximale Meßdauer von 2^31
  20. Timer-Ticks (ca. 35 Minuten). Die Auflösung der Timer beträgt ca. 1.4
  21. Mikrosekunden.
  22. Die Timer werden vom Betriebssystem für die serielle Schnittstelle
  23. benutzt. Deshalb sollte man das Modul nie gleichzeitig mit der
  24. seriellen Schnittstelle verwenden.
  25.  
  26.  
  27. Zu den Prozeduren:
  28.  
  29.   1)  ›33mPROCEDURE Start;›0m
  30.       Startet die Zeitmessung.
  31.  
  32.   2)  ›33mPROCEDURE Look(VAR ticks:LONGINT);›0m
  33.       Verstrichene Zeit auslesen ohne die Timer zu stoppen.
  34.  
  35.   3)  ›33mPROCEDURE Stop(VAR ticks:LONGINT);›0m
  36.       Timer stoppen und verstrichene Zeit auslesen.
  37.  
  38.   4)  ›33mPROCEDURE Continue;›0m
  39.       Timer nach 'Stop' weiterlaufen lassen.
  40.  
  41.   5)  ›33mPROCEDURE TicksToTime(VAR minutes, seconds:INTEGER;
  42.                     micros:LONGINT; ticks:LONGINT);›0m
  43.       Ticks in Minuten, Sekunden und restliche Mikrosekunden
  44.       umrechnen.
  45.  
  46.       Stop und Look liefern eine 0 zurück, falls die maximale Meßdauer
  47.       überschritten wurde.
  48.  
  49.  
  50. Beispielprogamm RunTime:
  51.  
  52. Aufruf:
  53.   RunTime "<program> <arguments>"
  54.  
  55.   RunTime startet das Programm <program> mit den Argumenten
  56.   <arguments> und ermittelt dessen Ausführungsdauer.
  57.  
  58.